1. Field of the Invention
The present invention provides an apparatus for assembling data for bit map scanning devices, such as laser printers or other scanning devices.
2. Description of Related Art
Bit map scanning devices, such as laser printers, process data defining a two-dimensional element-byelement map of an image, such as for printing or displaying. Typically, scanning devices of this kind employ a raster scanning format, in which images are defined by a plurality of lines of picture elements, scanned one line at a time. The data must be assembled and supplied to the raster scanning device according to this line-by-line format.
The data to be assembled by a scanning printer controller is stored in words in a variety of locations, such as font libraries, or system memory storing graphics. This data must be assembled in a bit map on bit boundaries in a buffer, known as a video buffer, prior to supply to the scanning device. This assembled data then must be serialized and outputted in time with the raster scanner.
In the prior art, the process of assembling the data from a variety of storage devices into a video buffer, and then serializing the data in the video buffer for output to the scanning device, has required substantial programming and hardware resources. Conventional controllers for this data assembly are implemented using general purpose microprocessors with discrete logic providing supplemental functions. Modern laser printers may have a resolution on the order of 400 pixels per inch and may involve several planes of bit maps for color coding. In such a system, a typed A4 size page requires as much as 1.8 megabytes of data to be arranged per bit map plane for each page to be printed. The programming and hardware burden increases the cost of controllers for laser printers and the like, especially for systems assembling large amounts of data.
Accordingly, there is a need for high speed, low cost solutions for assembling data for scanning devices. The solution should support a variety of fonts, and text mixed with graphics on one page, such as may be supplied from a variety of storage devices in the system. Also, the management of a video buffer should be removed from the host processor in order to simplify the scanning device interface from the programmer's viewpoint. Finally, it is desirable that such a data assembling device support "texturing" of fonts or graphics in the output page.